주식 자동매매 시스템

파이썬을 이용한 주식 자동매매 시스템

이미지
파이썬을 이용한 주식 자동매매 시스템 INDEX 환경구축 키움증권 API - 연결테스트 키움증권 API - 계좌정보 조회 키움증권 API - 주문 키움증권 API - 종목정보 가져오기 포트폴리오 - 종목, 업종별 자산 포트폴리오 한국투자증권 API API reference 키움 OpenAPI+ 개발가이드 한국투자증권 OpenAPI 다운로드 및 가이드 Design https://www.design-seeds.com/in-nature/succulents/cacti-color-2/ https://create.piktochart.com/dashboard

R Data Type

  • Scala
    단일 차원의 값 , 길이가 1인 벡터를 의미
    > a <- 3

    • NA(Not Available)
      데이터 값이 없음
      변수에 NA 값이 저장되어 있는지 확인할 때는 is.na() 함수를 사용한다
      is.na(변수명)
      

    • NULL
    • 변수가 초기화되지 않았을 때 사용
      어떤 변수에 NULL이 저장되어 있는지 확인할 때는 is.null() 함수를 사용
    • is.null(변수명)

  • Vector
    • 한가지 타입만 저장가능
      주어진 값들을 모아 벡터 생성
      c( , , , )
      
      객체에 이름을 저장 / 반환
      names(x) <- c("kim","so", "parck")
      
      names(x)
    • 벡터 x의 n번째 요소
    • x[n]
    • 벡터 x에서 n번째 요소를 제외한 나머지. 여러개 제외 가능
    • x[-n]
      x[-n1,-n2, , ,-nk]
    • 벡터 x로부터 idx_vector에 지정된 요소를 얻어옴
    • --
    • 벡터 x의 start부터 end까지의 값을 반환
    • x2 <- x[start:end]

  • List

  • Matrix

    • 한가지 타입만 저장가능
      > matrix(c(1, 2, 3, 4, 5, 6, 7, 8, 9), nrow=3)
           [,1] [,2] [,3]
      [1,]    1    4    7
      [2,]    2    5    8
      [3,]    3    6    9
      
      > matrix(c(1, 2, 3, 4, 5, 6, 7, 8, 9), nrow=3, byrow=TRUE)
           [,1] [,2] [,3]
      [1,]    1    2    3
      [2,]    4    5    6
      [3,]    7    8    9
      
      > colnames(m1) <- c('c1','c2','c3');
      > rownames(m1) <- c('r1','r2','r3');
      > m1
         c1 c2 c3
      r1  1  4  7
      r2  2  5  8
      r3  3  6  9
        1행과 2행을 가져와라
        > m1[c(1,2),]
           c1 c2 c3
        r1  1  4  7
        r2  2  5  8
          1행부터 3행의 2열 을 가져와라
          > m1[c(1:3),2]
            r1 r2 r3 
             4  5  6 
          error 
          같은 타입의 데이터만 올 수 있다 vector에
          > m1[c('r2' , 3), 'c3'] 
          > m1[c('r2' , 'r3'), 'c3']
           
          첫번째 column만 추출
          cc1 Type : vector가 된다
          > cc1 <- m1[ , 1]

        • matrix에서 행, 열 단위로 평균 구하기
        • # IQ 80
          c1<-mean(m1[1,]);
          c2<-mean(m1[2,]);
          c3<-mean(m1[3,]);
          c4<-mean(m1[4,]);
          
          s1<-mean(m1[,1]);
          s2<-mean(m1[,2]);
          s3<-mean(m1[,3]);
          s4<-mean(m1[,4])
          
          # IQ 90
          students <- rowMeans(m1)
          
          
          
          # IQ 100
          apply(m1,1,mean) # 행기준
          apply(m1,2,mean) # 열기준

      • DataFrame
        Multi type 가능
        
        > name<-c('lee','kim','park','jang','hong');
        > age <-c(10,20,30,40,50);
        > weight<-c(60,50,40,30,90)
        > df <- data.frame(name, age,weight)
        > df
          name age weight
        1  lee  10     60
        2  kim  20     50
        3 park  30     40
        4 jang  40     30
        5 hong  50     90
        
        
        
        > mean(df[,c('age','weight')]);
        [1] NA
        Warning message:
        In mean.default(df[, c("age", "weight")]) :
          인자가 수치형 또는 논리형이 아니므로 NA를 반환합니다
        
        > colMeans(df[,c('age','weight')])
           age  weight 
            20     50 
        

      • Matrix → Dataframe
      • # data frame으로 만들기
        
        resultM <- rbind(avgfemale, avgmale)
        resultDF <- as.data.frame(result1)
        
        
        > class(resultM)
        [1] "matrix"
        > class(resultDF)
        [1] "data.frame"

      이 블로그의 인기 게시물

      Linux에서 CSV파일 사용방법

      R에서 외부 데이터 이용하기 (Excel, csv)

      [R 함수] aggregate, apply 사용 방법